#include <ansi.h>

int isAreaPattern() { return 1; }

string getName() { return "海軍戰艦 - 朝南"; }


private mapping getIcon()
{
    mapping icon =
        ([ 0: ({ BBLU+HIW"～"NOR, BBLU+HIW"～"NOR, "◢ ", "口", "口", "口", "口", "口", "口", "口", "口", "口", "◣ ", BBLU+HIW"～"NOR, BBLU+HIW"～"NOR, }),
           1: ({ BBLU+HIW"～"NOR, "◢ ", "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", "◣ ", BBLU+HIW"～"NOR, }),
           2: ({ "◢ ", "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", "◣ ", }),
           3: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", HIB"● "NOR, "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
           4: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", HIB"│ "NOR, "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
           5: ({ "口", "  ", "  ", "  ", "  ", HIB"●-"NOR, HIB"--"NOR, HIB"●-"NOR, HIB"--"NOR, HIB"● "NOR, "  ", "  ", "  ", "  ", "口", }),
           6: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", HIB"│ "NOR, "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
           7: ({ "口", "  ", "  ", "  ", HIB"WO"NOR, HIB"RL"NOR, HIB"D "NOR, HIB"● "NOR, HIB"GO"NOR, HIB"VT"NOR, HIB". "NOR, "  ", "  ", "  ", "口", }),
           8: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
           9: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          10: ({ "口", "  ", "  ", "口", "口", "口", "口", "口", "口", "口", "口", "口", "  ", "  ", "口", }),
          11: ({ "口", "  ", "  ", "口", BWHT"  "NOR, BWHT+RED"操"NOR, BWHT"  "NOR, BWHT+RED"舵"NOR, BWHT"  "NOR, BWHT+RED"室"NOR, BWHT"  "NOR, "口", "  ", "  ", "口", }),
          12: ({ "口", "  ", "  ", "口", BWHT"  "NOR, BWHT"  "NOR, BWHT"  "NOR, BWHT"  "NOR, BWHT"  "NOR, BWHT"  "NOR, BWHT"  "NOR, "口", "  ", "  ", "口", }),
          13: ({ "口", "二", "二", "口", BWHT"  "NOR, BWHT"  "NOR, BWHT"  "NOR, BWHT"  "NOR, BWHT"  "NOR, BWHT"  "NOR, BWHT"  "NOR, "口", "二", "二", "口", }),
          14: ({ "口", "二", "二", "口", "口", "口", "口", "门", "口", "口", "口", "口", "二", "二", "口", }),
          15: ({ "口", "  ", "  ", "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", "  ", "  ", "口", }),
          16: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          17: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          18: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          19: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          20: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          21: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          22: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          23: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          24: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          25: ({ "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", }),
          26: ({ BCYN"◥ "NOR, "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", BCYN"◤ "NOR, }),
          27: ({ BCYN+BLU"◣ "NOR, BCYN"◥ "NOR, "口", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "  ", "口", BCYN"◤ "NOR, BCYN+BLU"◢ "NOR, }),
          28: ({ BBLU+HIW"～"NOR, BCYN+BLU"◣ "NOR, BCYN"◥ "NOR, "口", "口", "口", "口", "口", "口", "口", "口", "口", BCYN"◤ "NOR, BCYN+BLU"◢ "NOR, BBLU+HIW"～"NOR, }),
        ]);
    return icon;
}

private mapping getBlock()
{
    mapping block =
        ([ 0: ({ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }),
           1: ({ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 }),
           2: ({ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1 }),
           3: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
           4: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
           5: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
           6: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
           7: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
           8: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
           9: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          10: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          11: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          12: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          13: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          14: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          15: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          16: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          17: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          18: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          19: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          20: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          21: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          22: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          23: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          24: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          25: ({ 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 }),
          26: ({ 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1 }),
          27: ({ 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1 }),
          28: ({ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }),
        ]);
    return block;
}

mapping getMapStyle()
{
    mapping style = ([
        "icon": getIcon(),
        "block": getBlock(),
    ]);

    return style;
}
